package com.bookstore.back.service;

import com.bookstore.back.entity.UserAddress;

import java.util.List;
import java.util.Map;

/**
 * 用户地址服务接口
 * 
 * @author 程序猿_Ti
 * @since 2025-07-22
 */
public interface UserAddressService {

    /**
     * 获取用户地址列表
     * 
     * @return 地址列表
     */
    List<UserAddress> getUserAddressList();

    /**
     * 根据ID获取地址详情
     * 
     * @param addressId 地址ID
     * @return 地址信息
     */
    UserAddress getAddressById(Integer addressId);

    /**
     * 添加用户地址
     * 
     * @param addressData 地址数据
     * @return 是否成功
     */
    boolean addUserAddress(Map<String, Object> addressData);

    /**
     * 更新用户地址
     * 
     * @param addressId 地址ID
     * @param addressData 地址数据
     * @return 是否成功
     */
    boolean updateUserAddress(Integer addressId, Map<String, Object> addressData);

    /**
     * 删除用户地址
     * 
     * @param addressId 地址ID
     * @return 是否成功
     */
    boolean deleteUserAddress(Integer addressId);

    /**
     * 设置默认地址
     * 
     * @param addressId 地址ID
     * @return 是否成功
     */
    boolean setDefaultAddress(Integer addressId);

    /**
     * 获取用户默认地址
     * 
     * @return 默认地址信息
     */
    UserAddress getDefaultAddress();

}
